package hu.blok1.veilingsite.client.data;

import hu.blok1.veilingsite.shared.Product;
import hu.blok1.veilingsite.shared.Bid;

import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface ProductServiceAsync {

	void createProduct(Product p, AsyncCallback<Boolean> callback);

	void getNumberOfProducts(AsyncCallback<Integer> callback);

	void findMultiProduct(AsyncCallback<List<Product>> callback);
	
	void findSingleProduct(int ProductID, AsyncCallback<Product> callback);
	
	void findBidsOfProduct(int productID, AsyncCallback<List<Bid>> callback);

	void createNewBid(Bid b, AsyncCallback<Boolean> callback);

	void getHighestBid(int productID, AsyncCallback<Integer> callback);
}
